package Java_base;

public class Mess {

    // yield()做的是让当前运行线程回到可运行状态,以允许具有相同优先级的其他线程获得运行机会。
    // ==：基本类型比较值，引用类型比较对象地址
    // equals是Object类的方法，比较引用类型。没有重写默认同==
    // intern()方法：池子有直接返回；池子没有在池子中新建再返回

    // @Autowired和@Resource的区别:
    // @Resources按名字，是ＪＤＫ的，@Autowired 按类型，是Ｓｐｒｉｎｇ的。
    // 1、 @Autowired与@Resource都可以bai用来装配bean. 都可以写在字段上du,或写在setter方法上。
    //2、 @Autowired默认按zhi类型装配（这个注解是属业spring的），
    // 默认情况下必须要求依赖对象必须存在，如果要允许null值，可以设置它的required属性为false，
    // 如：@Autowired(required=false) ，如果我们想使用名称装配可以结合@Qualifier注解进行使用，
    // @Resource（这个注解属于J2EE的），默认安装名称进行装配，名称可以通过name属性进行指定，
    // 如果没有指定name属性，当注解写在字段上时，默认取字段名进行安装名称查找，
    // 如果注解写在setter方法上默认取属性名进行装配。当找不到与名称匹配的bean时才按照类型进行装配。但是需要注意的是，如果name属性一旦指定，就只会按照名称进行装配。
    //Java代码
    //@Resource(name="baseDao")
    //private BaseDao baseDao;
    //@Resource(name="baseDao") private BaseDao baseDao;

    // Spring IOC容器对bean的生命周期进行管理的过程：
    // ① 通过构造器或工厂方法创建bean实例
    //
    //② 为bean的属性设置值和对其他bean的引用
    //
    //③ 调用bean的初始化方法
    //
    //④ bean可以使用了
    //
    //⑤ 当容器关闭时，调用bean的销毁方法

    // BeanFactory和FactoryBean的区别
    // BeanFactory是个Factory，也就是IOC容器或对象工厂，FactoryBean是个Bean。
    // 在Spring中，所有的Bean都是由BeanFactory(也就是IOC容器)来进行管理的。
    // 但对FactoryBean而言，这个Bean不是简单的Bean，而是一个能生产或者修饰对象生成的工厂Bean,
    // 它的实现与设计模式中的工厂模式和修饰器模式类似 
}
